package com.brothers.thisGame;
import java.util.Observer;
/**
 * 玩家
 * @author xiaohui.worker
 *
 */
public interface Player extends Observer{
	public Integer getId();
	public String getNick();
	public void setId(Integer id);
	public void setNick(String nick);

	/**
	 * 退出游戏
	 * @param game
	 */
	public void quit(Game game);
	/**
	 * 投注
	 * @param game
	 * @param score
	 */
	public void bet(Game game,int score);
	/**
	 * 购买筹码
	 * @param score
	 */
	public void buy(int score);
	/**
	 * 筹码兑现
	 * @param score
	 */
	public void cash(int score);
	/**
	 * 设定玩家剩余筹码数
	 * @param remaining
	 */
	public void setRemaining(int remaining);

	/**
	 * 返回玩家剩余筹码数
	 * @return
	 */
	public int getRemaining();
	/**
	 * 庄家开出特定赔率的盘口
	 * @param i
	 * @param j
	 */
	public Game makeGame(int odds, int totalScore);

	/**
	 * 玩家从某游戏赢得一笔赔注
	 * @param game
	 * @param playersIncome
	 */
	public void gain(int income);

	/**
	 * 庄家损失一笔押注
	 * @param game
	 * @param outcome
	 */
	public void lose(int outcome);
}
